package com.zmn.oms.model.dto.entrust;

import com.zmn.oms.common.dto.OmsBaseOperator;
import com.zmn.oms.model.dto.product.OrderProductDTO;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Date;
import java.util.List;

/**
 * 类描述：
 *
 * @author lhl
 * @date 2020/01/14 18:00
 */
@Data
public class NewEntrustOrderDTO extends OmsBaseOperator {
    /**
     * 城市id
     */
    @NotNull(message = "城市不能为空")
    private Integer cityId;

    /**
     * 区县ID
     */
    private Integer contyId;

    /**
     * 预约时间
     */
    private Date dutyTime;

    /**
     * 客户名称
     */
    private String userName;

    /**
     * 性别：1 男; 2 女; 3 保密
     */
    private Integer gender;

    /**
     * 街道
     */
    @NotEmpty(message = "用户地址不能为空")
    private String street;

    /**
     * 客户地址具体门牌号
     */
    private String address;

    /**
     * 客户电话1
     */
    @NotEmpty(message = "用户电话不能为空")
    private String telephone;

    /**
     * 服务分类id
     */
    @NotNull(message = "服务分类不能为空")
    private Integer servCategId;

    /**
     * 产品分类id（二级分类）
     */
    private Integer categId;

    /**
     * 订单客户备注
     */
    @Size(max = 5000, message = "备注最多5000个字符")
    private String remark;

    /**
     * 产品列表
     */
    @NotNull(message = "服务产品不能为空")
    private List<OrderProductDTO> orderProductList;

    /**
     * 渠道ID
     */
    @NotNull(message = "来源渠道不能为空")
    private Integer channelId;

    /**
     * 经度
     */
    @NotNull(message = "位置信息不能为空")
    private Double longitude;

    /**
     * 纬度
     */
    @NotNull(message = "位置信息不能为空")
    private Double latitude;

    /**
     * 是否测试单（1：非测试单，2：测试单）
     */
    private Integer test;
}
